package com.excesys.exsecs.energy.service;

import cn.hutool.json.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.excesys.exsecs.energy.entity.DevBranchMap;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

public interface DevBranchMapService extends IService<DevBranchMap> {
    //支路能耗 - 统计能耗用电量
    JSONObject powerBranchData(String id, String startDate, String endDate, String compareType) throws ParseException;

    //支路能耗 - 能耗图层
    JSONObject powerBranchLayer(String id, String startDate, String endDate, String compareType) throws ParseException;

    //支路能耗 - 桑基图统计
    List<Map<String, Object>> powerBranchLinks(String startTime, String endTime, List<String> idsList);

    //能耗报表 - 日 - 电
    List<Map<String, Object>> dayReport(String startTime, String endTime, List<String> idList);

    //能耗报表 - 日 - 电区间
    List<Map<String, Object>> daySectionReport(String startTime, String endTime, List<String> idList);

    //能耗报表 - 月
    List<Map<String, Object>> monthReport(String date, List<String> idList);

    //能耗报表 - 月 - 区间
    List<Map<String, Object>> monthSectionReport(String startTime, String endTime, List<String> idList);

    //能耗报表 - 年
    List<Map<String, Object>> yearReport(String date, List<String> idList);

    //能耗报表 - 年 - 区间
    List<Map<String, Object>> yearSectionReport(String startTime, String endTime, List<String> idList);

    //能耗排名
    List<Map<String, Object>> branchSortRank(String startTime, String endTime, List<String> idList);

    JSONArray powerCostData(String id, String startDate, String endDate) throws ParseException;

    JSONObject powerCostBingtu(String id, String startDate, String endDate) throws ParseException;
}